“Background Art 1”
Various symbols which are attached to items to be optically read for information processing are used. For example, a so-called barcode that records information by black and white patterns in one-dimensional direction is used since a long time ago.
Optical Code Using Colors
As optical codes, codes using chromatic colors such as red and blue (for convenience, such codes using chromatic colors will be called color codes herein) other than black and white are also widely proposed.
Normally, in an optical code (system) using colors (using chromatic colors), when a change occurs in detection of colors in a reader, the possibility that corresponding data also changes is higher than that in a black-and-white code. There is consequently a problem that the optical code using colors is susceptible to deterioration in color, printing unevenness, illumination light, and the like.
Conventional Patent Prior Arts
For example, the patent document 1 mentioned below discloses a barcode using three colors. The barcode is constructed so that “1” is expressed when the colors are shifted in a first order, and “0” is expressed when the colors are shifted in a second order.
The patent document 2 mentioned below discloses a code realizing increased data capacity by setting the color density of each of three primary colors in a plurality of tones.
The patent document 3 mentioned below discloses a two-dimensional code in which information is divided into predetermined bit sequences according to printing capacity of a printer, and a color is selected and recorded for each of the divided bit sequences, a method of generating the two-dimensional code, and a restoring method.
The patent document 4 mentioned below discloses a code which can be used as a colored barcode as well as a general black-and-white barcode.
“Background Art 2”
The applicant of the present invention has proposed an optical recognition code expressing information by a shift and a change in colors in Japanese Patent Application No. 2006-196705 mentioned above. The optical recognition code is called a “1D color bit code”. In the 1D color bit code, since restrictions on the size and shape of an area occupied by each of the colors are loose, the optical recognition code can be marked even on a rough surface or a soft material.
However, since the size and shape of an area occupied by a predetermined color are not constant, it is difficult for the conventional reading technique to handle such a 1D color bit code.
Conventional Barcode Reading Techniques
On the other hand, a so-called two-dimensional barcode is conventionally known. Generally, the two-dimensional barcode expresses data by black and white (light and dark) in segments whose positions are defined in a grid. Usually, a “marking pattern” (which refers to the pattern of the two-dimensional barcode including quiet zones for indicating boundaries) is integrated with “a marked object” as an object subject to marking. Generally, the marking pattern is integrated in the surface of the marked object by printing or the like.
When capture (capture of data as two-dimensional image data by an area sensor or the like) is optically performed to read the two-dimensional barcode, naturally, a part of the “marked object” is also captured (together with the two-dimensional barcode).
Even in the case where only the “marking pattern” floats in the air (such as the case where the marked object to be marked is a transparent one, or the two-dimensional barcode is hung by a string or the like), it is usually unavoidable that a background is captured together with the marking pattern.
Herein, an entered image other than the “marking pattern” in this case is referred to as a “background image”. The input image of the “marking pattern” is referred to as a “marking image”.
To decode the “marking image”, it is clearly necessary as the first steps:
to distinguish the “marking image” and the “background image” from each other, and
to recognize an accurate range of the “marking image”.
Such operations are usually called “cutout” of the “marking image”. In the case of a conventional two-dimensional barcode, the following procedures are taken. A plurality of specific patterns (usually called “cutout marks”) is found by image recognition from an image captured by the area sensor. Based on the sizes of the “cutout marks” and the positional relations between them, a two-dimensional code existing range is estimated. Specifically, the range and the dimension of the pattern of the two-dimensional barcode are estimated, and the range is segmented. From data read from each of the segments, the existence of the two-dimensional barcode in the segment is recognized.
On the other hand, a conventional one-dimensional barcode represents data by the thicknesses of black and white (dark and light) bars. Bars at both ends and quiet zones correspond to the “cutout marks” in a two-dimensional barcode.
However, in general specifications of a one-dimensional barcode, linear “scan lines” are assumed and the dark and light patterns on the line are read. Consequently, the concept of cutting out the marking pattern from the background does not exist.
In the one-dimensional barcode, it is actually important to align the “scan line” with the bars in the one-dimensional barcode.
This operation can be carried out in various manners.
Firstly, this can be carried out by visual observation of the operator. Secondly, this can be carried out by emitting a number of scan lines like a raster scan. In this method, a barcode is held over the range where the scan lines exist, scanned by the number of scan lines, and decoding is performed based on the scanning result.
Generally, the first or second method is commonly used.
Therefore, the idea of “cutout” in the one-dimensional barcode is handy as compared with the two-dimensional barcode. On the other hand, a predetermined width (length of thick and thin bars) is necessary for the “marking pattern” in the barcode, and when the thickness is extremely small or large or in the case where arranged bars are curved, it is very difficult to perform decoding.
Conventional Patent Prior Arts
For example, the patent document 5 mentioned below discloses a cutout method capable of easily cutting out a barcode from characters and a figure.
The patent document 6 mentioned below discloses a method of printing a barcode including much information in a small space. In particular, it is characterized in that a barcode which is cut out as a set of inferior arcs having a center angle θ.
The patent document 7 mentioned below discloses an apparatus for reading a two-dimensional barcode. In particular, it discloses a technique characterized in switching decoding means according to the quality of an image.
Further, the patent document 8 mentioned below discloses a barcode cutout method capable of reading a plurality of bar codes. According to the technique disclosed here, even if left and right margins are nonstandard, they can be recognized continuously, and thus a plurality of barcodes can be cut out.
“Background Art 3”
As desCribed above, the applicant of the present invention proposed an optical recognition code representing information according to a shift and a change in colors in Japanese Patent Application No. 2006-196705 mentioned above. The optical recognition code is called a “1D color bit code”.
The 1D color bit code has a structure of returning a digital value determined by a sequence of a plurality of colors (signal colors). The basic specification is a lined sequence (code symbol) of colors (signal colors).
Therefore, as the amount of data represented increases, the code symbol becomes long. As a result, the possibility that an entire single code symbol cannot be captured at once increases.
In some cases, a concrete single optical recognition code which is a geometric figure and represents predetermined data is particularly called a “code symbol” (or simply “symbol”). The concrete code symbol is captured by a CCD camera or the like, and a predetermined image processing is performed to restore original data.
Cases where a code symbol cannot be included within the field of view of an image of a camera and where a part of a code symbol is covered are actually assumed. In such cases, since the code symbol cannot be captured in a single screen, it is difficult to restore data. Therefore, it is necessary for the operator to carefully capture data.
A general black and white barcode based on the concept of stitching is known. In the case where data is read partially, not entirely, a plurality of pieces of partially read data is captured and stitched to restore data of an originally single barcode (that is, an entire single code symbol).
Such a stitching technique is applied to reading by a raster scan and reading of a stacked two-dimensional barcode. In the readings, data is stitched largely based on a peculiar pattern indicative of an end point or the center. FIG. 26 shows a state of stitching.
FIG. 26 shows an example of a barcode 3010 using general black and white bars. Scan lines are drawn on the barcode. It can be easily understood that a scan line 3012 scans only an upper left part of the code symbol, and thus only a part of the left side of the code symbol is obtained. On the other hand, it can be easily understood that a scan line 3014 scans only a lower right part of the code symbol, and thus only a part of the right side of the code symbol is obtained.
Obviously, in such a case, by stitching the data captured by the scans of the two scan lines 3012 and 3014, the single complete code symbol 3010 can be captured. Consequently, the technique is widely used.
In such a stitching technique, the pattern of a partial code captured is read, and it is determined which part is read. Based on the determination, stitching is performed. Therefore, the pattern of the barcode has to have some redundancy.
It can be considered that the stitching based on such redundancy can also be applied to a 1D color bit code to improve reading precision.
Definition of 1D Color Bit Code
Definition of the 1D color bit code devised by the inventors of the present invention will now be described. The 1D color bit code is defined as follows:
The 1D color bit code is “cells” as predetermined color areas which are arranged in a line (=“cell sequence”);
A plurality of colors is used, and a color is assigned to each cell;
The cells do not include each other. That is, a cell is not included in another cell;
The number of cells constituting a sequence is a predetermined number; and
The same color is not assigned to neighboring cells, but different colors are always assigned.
A 1D color bit code is generated basically based on these conditions.
Obviously, the number of cells, the kinds of colors actually used and the like vary depending on applications.
Conventional Patent Prior Arts
Now, some conventional patent prior arts will be described.
For example, the patent document 9 mentioned below discloses a technique of printing an ID code by a 4-state bar and printing a local code by a barcode according to the bar-no-bar method, thereby preventing missing in the printing.
The patent document 10 mentioned below discloses a technique capable of reading a barcode even when an object captured by a CCD camera is faded or the barcode has a missing part.
The patent documents 8 and 11 mentioned below disclose a thermosensitive recording member which includes a thermosensitive color layer containing a color compound having near-infrared absorption performance and in which a color pattern is a Calra code. It is described that even if an automatically recognized code has some missing part, it can be read.
Patent Document 1:
Japanese Patent Application Laid-Open No. S63-255783 (Patent No. 2521088)
Patent Document 2
Japanese Patent Application Laid-Open No. 2002-342702
Patent Document 3
Japanese Patent Application Laid-Open No. 2003-178277
Patent Document 4
Japanese Patent Application Laid-Open No. 2004-326582
Patent Document 5
Japanese Patent Application Laid-Open No. 2005-266907
Patent Document 6
Japanese Patent Application Laid-Open No. 2005-193578
Patent Document 7
Japanese Patent Application Laid-Open No. H08-305785
Patent Document 8
Japanese Patent Application Laid-Open No. H08-185463
Patent Document 9
Japanese Patent Application Laid-Open No. 2006-095586
Patent Document 10
Japanese Patent Application Laid-Open No. 2000-249518
Patent Document 11
Japanese Patent Application Laid-Open No. H08-300827